Digital bit streams can be used for the transmission and distribution of media signals, such as video and audio. The media streams could be, for example, Moving Picture Experts Group streams (i.e. MPEG-1, MPEG-2, MPEG-4 part 2, MPEG-4 part 10 (i.e. H.264)), Windows® Media (VC-1) streams, RealAudio streams, or MPEG Audio Layer-3 (mp3) streams, among others that can be used for the transmission of audio and/or video signals in compressed digital streams. Accordingly, within the context of this disclosure, a multimedia stream (or simply a media stream) could comprise one or more of an audio stream, a video stream, or any other underlying media signals used to convey information (text, graphics, animation, charts, graphs, etc.).
Such multimedia streams may be transmitted over a variety of distribution channels such as computer networks, satellite links, cable television (CATV) lines, radio-frequency signals, and digital subscriber lines (DSL), among others. As a consequence, the multimedia streams can be adapted to a particular distribution channel over which they may be transmitted. For example, the streams could be encoded into a different format (i.e. MPEG-4 to MPEG-2), could be converted from one resolution to another (i.e. 1280×720 pixels to 720×480 pixels), or could be converted from one bit rate to another (i.e. 4 Mbps to 2 Mbps). Such conversions of the multimedia stream, among others, can be collectively referred to as transcoding.
In many cases, conventional transcoders used to process a single bit stream can be made cost effectively and with relatively low implementation issues. However, as the number of media streams being transcoded increase, implementation issues become problematic. This is especially true in terms of the potential memory consumption and sheer number of processors used to perform the decoding and subsequent re-encoding.
Accordingly, in light of these potential deficiencies, among others, it is desirable to provide a transcoder that is scalable to process a large number of multimedia streams while providing the capability to minimize the amount of processing hardware and/or memory.